package net.cyl.vo;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 流量包订单表
 * </p>
 *
 * @author 曹玉林
 * @since 2025-05-20
 */
@Data
@EqualsAndHashCode(callSuper = false)

public class ProductOrderVO {



    /**
     * 订单ID
     */

    private Long id;

    /**
     * 关联商品ID
     */
    private Long productId;

    /**
     * 商品标题
     */
    private String productTitle;

    /**
     * 商品单价
     */
    private BigDecimal productAmount;

    /**
     * 商品快照（JSON格式）
     */
    private String productSnapshot;

    /**
     * 购买数量
     */
    private Integer buyNum;

    /**
     * 外部交易号（唯一标识）
     */
    private String outTradeNo;

    /**
     * 订单状态：NEW未支付，PAY已支付，CANCEL已取消
     */
    private String state;

    /**
     * 订单生成时间
     */
    private Date createTime;

    /**
     * 订单总金额
     */
    private BigDecimal totalAmount;

    /**
     * 实际支付金额
     */
    private BigDecimal payAmount;

    /**
     * 支付类型：微信、支付宝、银行等
     */
    private String payType;

    /**
     * 用户昵称
     */
    private String nickname;

    /**
     * 用户ID
     */
    private Long accountNo;

    /**
     * 删除标记：0未删除，1已删除
     */
    private Integer del;

    /**
     * 更新时间
     */
    private Date gmtModified;

    /**
     * 创建时间
     */
    private Date gmtCreate;

    /**
     * 发票类型：0不开发票；1电子发票；2纸质发票
     */
    private String billType;

    /**
     * 发票抬头
     */
    private String billHeader;

    /**
     * 发票内容
     */
    private String billContent;

    /**
     * 收票人电话
     */
    private String billReceiverPhone;

    /**
     * 收票人邮箱
     */
    private String billReceiverEmail;


}
